分享好友 技术首页 技术分类 切换频道

使用新途径改善嵌入式系统实时效能

2020-07-18 01:14140

在这个日趋复杂的世界,对于嵌入式处理器的要求也愈来愈高。去年也许使用128k的程序及4个实时处理绪列便足以执行应用程序,但是今年的产品规格已将所需内存提升为两倍,中断处理提高为三倍。要处理的信息本质似乎非常稳定-其实远比您想象的还要多!去年的微控制器必须在两个通讯总线上处理25笔4位的讯息,而今年已经必须要在4个通讯总线上处理200笔4位的讯息。在面对这种不断升高的工作负荷时,自然倾向寻求更强大的处理器来执行工作。一般来说处理器效能的传统趋势是提升速度及数据总线,所以一个8位处理器可从8MHz提升到16MHz,一个16位的装置升级为一个32位的装置。但是,两种作法都必须付出应用上的成本。更快的装置可能消耗更多的电力,而且较不符合EMC的要求,更大的位宽度则会造成先前的软件投资优势尽失,并导致更多的冗余(例如使用32位的缓存器来处理4位的资料)。

飞思卡尔半导体了解这个持续的趋势,因此在其新研发的S12X架构中采用创新的方法,可兼顾效能的提升与向后兼容性,并专注在效能提升的问题。这个新设计可在需要之处提升处理器的效能,也就是能实时处理信息。

动态内存存取(DMA)

改善系统实时效能的一个熟知的方法是,额外提供一个逻辑模块,在事件发生时产生响应,并允许处理器在较方便的时间来处理信息。这个DMA控制器通常将传送到模块的信息复制到内存(RAM),并允许已处理的信息自动从内存移到外部外围装置。所有这些工作皆独立于目前的CPU活动-详见图1。这种方式肯定有所助益,但其效益于延迟必然发生的事件-CPU还是得在某一时间处理信息。S12X采用一个根本的方法,即提供「智能型DMA」控制器,不只移动资料,同时直接执行所有的处理工作。如图2所示,这个新的XGate可以从外围装罝撷取信息,连同其它资料(例如内存中的资料)一并处理,然后传送到另一个外围装置,其间完全不需CPU的介入。

XGate

XGate控制器已完全整合到新推出的MC9S12XDP512微控制器-的飞思卡尔半导体S12家族成员。XGate是一个可程序的16位RISC核心,极适用于实时及DMA类型运作。与S12X装置的整合意谓从微控制器的任何一个外围装置传来的中断都可以由主CPU或XGate处理。XGate可以:

读写所有外围装置及内存
读取闪存(flash)中的信息
可设定以执行复杂的工作

为了让XGate达到zui大效能,其主要程序通常储存位于内存中。这使得80MHz的时脉可应用于控制器,相对于S12X CPU只需使用40MHz。而且,S12X架构不同于传统的DMA,可保证XGate每一个CPU周期至少可存取内存一次。

XGate编程

如要让“智能型DMA”更为实用,必须使它容易编程。在理想的环境下,软件工程师应该能够导入以C语言编写的既有程序代码,并针对DMA重新组译。基于这个原因,XGate选择16位RISC机器作为程序撰写模式,并有适用于C语言程序的指令集。

一般的系统完整性检查系透过CRC16计算,也就是对一组资料模块进行多项式计算,并透过产生zui终检核码的值,来确认内存内容符合预期。这种算法可利用周期性的中断来呼叫。飞思卡尔S12 MCU的这种算法之典型建置如图3所示。在S12X上,此一算法可在XGate定期重新组译及执行,其好处是系统设计者可在CPU上执行更多处理,却不会降低系统检查的效益。XGate不仅释放CPU给其它活动,同时还使这个简单算法的执行时间,获得了4倍的惊人改善。这也让设计者可以在相同期间所执行的CRC演算次数高4倍,藉此改善系统的自我检查能力。值得注意的是,这项革命性的架构方法,仅透过简单的重新组译及重新导向周期性的中断,便可带来这些重大的优点。

S12X的自动化应用

大多数汽车应用对实时效能的要求都很高,通常超过模块的实际功能。例如汽车的仪表板必须可以显示车辆目前的状态,同时可接收并处理从传感器传来的实时讯息。由于XGate不仅可以接收这项信息,还可予以格式化并储存,因此CPU可用来响应驾驶人互动的时间便大量增加,更可减少显示器可能出现的噪声干扰。

根据广泛使用的S12架构,这种双重方法的好处就非常明显了。

大多数现代化汽车都是利用通讯网关来允许不同的通讯网路互传讯息。此外,网关还可以执行其它功能。XGate可以在大约4μs内执行一个典型的网关工作(检查CAN ID,储存于内存,然后复制到传送缓冲器(transmit buffer)中),而S12需9μs。这表示使用XGate,CPU可储存高于9μs的中断。对一个具有5个CAN网络完全满载的非常忙碌连接网关而言,它可节省超过20%的CPU处理能力,却仅用到XGate的10%。

对于一个更复杂的网关而言,要将个别位字段或讯号在多个CAN上进行路由传送,XGate的处理速度通常可高于每秒处理35000则讯息。

利用软件建立自订的解决方案

标准的嵌入式软件设计活动就是建立硬件外围装置的软件版本。典型的实例包括运用I/O建立一个序列通讯端口,或额外的PWM信道。S12X架构藉由建立高度复杂的「虚拟外围装置」,让这种设计方法迈入新的层次。由于CPU的实时响应不受外在事件的影响,它可在配有一个基本CAN模块的装置上,直接建置完整的CAN节点,从标准的串行端口建立LIN模块,从单一的定时器提供40个PWM信道,还可提供其它变化的方式。由于这些变化完全由软件控制,便可以混合及搭配各式组合。需要3个32个信箱的CAN模块及2个8个信箱的模块?没问题!和另外一种将所有模块都建置在硬件中的方法相比,这简直是莫大的妙用,后者恐怕必须用到所有架构内的可能配置, 成本也会大幅增加。

简化实时设计

除了提供改善的实时效能,这种双重架构途径也可为实时软件设计者带来意想不到的好处。许多架构式分析及设计工具依赖设计者将资料流处理与实时或控制处理分开。这个方法可以简化高阶设计,但却隐藏了在建置时潜藏的效能问题。有了S12X,设计者可轻易确保实时处理不会互相冲突,因为主CPU可以完全将重心放在主要资料的处理。

免责声明:矿库网文章内容来源于网络,为了传递信息,我们转载部分内容,尊重原作者的版权。所有转载文章仅用于学习和交流之目的,并非商业用途。如有侵权,请及时联系我们删除。感谢您的理解与支持。

点赞 0
举报
收藏 0
评论 0
分享 0
山东济宁危废监管用上大数据平台
:在山东省济宁市危险废物信息大数据监管平台,全市企业的产废量、自行利用量、转移处置量、一般固废产生量、医废处置量一目了然。据了解,目前,济宁市已有1000余家产废企业和医疗机构纳入平台,实行全过程无缝隙监管,筑牢环境安全绿色

0评论2020-08-17673

基于KingHistorian建立城市热网管理远程监测/诊断服务中心
一、背 景随着设备制造业的发展,设备的功能越来越多,其自身的结构、组成愈加复杂,因而发生故障的原因也随之复杂。与此同时,设备制造商的产品分布在全国各地,当设备出现故障时,制造商需要投入很大的人力和物力进行维护工作。小区热

0评论2020-07-2024

水质无线监测系统方案
一、概述环境监测是环境保护工作的重要组成部分,是环境管理的基础和。随着我国工业化和城市化的迅速发展,环境保护也相应大力发展起来。这样就迫切需要加快全国环境管理基础能力的建设,提高环境监测能力和环境监督执法管理水平。排污口

0评论2020-07-20471

无线热网监控系统实现突发事件实时报警
一、应用背景原有热网系统隶属于热电厂,该网拥有135个监控点,其中包含117个温度监测点,8个流量监测点,4路告警装置调控,3路温度阀调控,3路流量阀调控。现拟采用分步式总线方式将流量、温度等数据采集,现场显示;并能够通过无线网络

0评论2020-07-20674

分布式变电站实时电力监控系统
变电站电力监控系统能提供必要的实时运行信息,尤其是开关和保护行为的信息(事故报警信息),使值班人员和系统调度人员把握安全控制、事故处理的主动性,同时可以提高电网的运行管理水平,减少变电、配电损失,提高供电质量。一. 系统

0评论2020-07-20360

基于VxWorks系统的嵌入式实时PLC设计

0评论2020-07-1910

传感器在工业系统的应用

0评论2020-07-1914

vega prime-虚拟仿真技术简介

0评论2020-07-1913

正伟水资源实时监控与管理系统方案

0评论2020-07-1915

世纪星与GPRS在污染源在线监测系统中的应用

0评论2020-07-1922